Conversation
…b.com/SISC-IT/sisc-web into 20260403-FE-ADD-ADMINPAGE-ABSENT-LIST
…b.com/SISC-IT/sisc-web into 20260403-FE-ADD-ADMINPAGE-ABSENT-LIST
…lost during merge
Walkthrough참석 관리 컴포넌트들을 안정성 개선하기 위해 React Portal을 도입하고, 누락되거나 정의되지 않은 데이터에 대한 방어적 처리를 추가하며, 결석 요약 모달에 고정 헤더와 높이 제약을 적용했습니다. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
frontend/src/components/attendancemanage/SessionManagementCard.jsx (1)
80-85: 에러 객체의status접근 순서가 axios 인터셉터 패턴과 맞지 않습니다.
frontend/src/utils/axios.js의 인터셉터가 에러를{ status, message, data }형태로 정규화하여 reject합니다. 따라서e.response.status는 항상undefined이며,e.status에서 상태 코드를 가져옵니다.현재 코드는 fallback 덕분에 동작하지만, 같은 파일의
isSessionOwnerPermissionError함수(라인 24)는error?.status ?? error?.response?.status순서를 사용합니다. 일관성을 위해 동일한 패턴을 적용하는 것이 좋습니다.♻️ 수정 제안
} catch (e) { - const status = e?.response?.status ?? e?.status; + const status = e?.status ?? e?.response?.status; if (status === 403) { toast.error('세션 멤버가 아니거나 조회 권한이 없습니다.'); } else { toast.error('라운드를 불러오지 못했습니다.'); }🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@frontend/src/components/attendancemanage/SessionManagementCard.jsx` around lines 80 - 85, The error-status access order is reversed for the app's axios interceptor normalization: update the status lookup in the SessionManagementCard error handler (the const status = ... assignment) to use e?.status ?? e?.response?.status so it reads the normalized {status, message, data} first, and make it consistent with the existing isSessionOwnerPermissionError function (which already uses error?.status ?? error?.response?.status); ensure both places use the same order and adjust the toast branching (403 vs default) to rely on that normalized status.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@frontend/src/components/attendancemanage/SessionManagementCard.jsx`:
- Around line 80-85: The error-status access order is reversed for the app's
axios interceptor normalization: update the status lookup in the
SessionManagementCard error handler (the const status = ... assignment) to use
e?.status ?? e?.response?.status so it reads the normalized {status, message,
data} first, and make it consistent with the existing
isSessionOwnerPermissionError function (which already uses error?.status ??
error?.response?.status); ensure both places use the same order and adjust the
toast branching (403 vs default) to rely on that normalized status.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: c2961e45-0ee0-4c60-a2bf-8dd5a69f024c
📒 Files selected for processing (5)
frontend/src/components/attendancemanage/AbsenceSummaryModal.jsxfrontend/src/components/attendancemanage/AbsenceSummaryModal.module.cssfrontend/src/components/attendancemanage/AttendanceManagementCard.jsxfrontend/src/components/attendancemanage/SessionManagementCard.jsxfrontend/src/components/attendancemanage/SessionManagementCard.module.css
💤 Files with no reviewable changes (1)
- frontend/src/components/attendancemanage/SessionManagementCard.module.css
overflow 설정을 수정하여, 세션 수정/삭제를 위한 드롭다운 메뉴 버튼이 잘리거나 작동하지 않던 현상을 수정
Summary by CodeRabbit
릴리스 노트
버그 수정
UI 개선